# -*- coding: utf-8 -*-

"""
@Datetime: 2019/5/21
@Author: Zhang Yafei
"""


def outer(outertionName):
    print("-----outer---1----")

    def inner(*args, **kwargs):
        print("----inner---1--")
        outertionName(*args, **kwargs)
        print("---inner---2---")

    print("----outer---2---")
    return inner


@outer
def func(a, b, c):
    print(f"---func- a={a},b={b},c={c}---")


@outer
def func1(a, b, c, d):
    print(f"---func- a={a},b={b},c={c},d={d}---")


func(1, 2, 3)
func1(1, 2, 3, 4)
"""
-----outer---1----
----outer---2---
-----outer---1----
----outer---2---
----inner---1--
---func- a=1,b=2,c=3---
---inner---2---
----inner---1--
---func- a=1,b=2,c=3,d=4---
---inner---2---
"""
